﻿using MuchoMusculo.Business;
using MuchoMusculo.BusinessObjects;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace MuchoMusculo.Web.Pages
{
    public partial class Clients : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
         
        }

        protected void AddOrEdit()
        {
            bsClientes bsCliente = new bsClientes();
            tbClientes cliente = new tbClientes();
            try
            {
                cliente.cedula = ((TextBox)fvClientes.FindControl("cedulaTextBox")).Text;
                cliente.direccion = ((TextBox)fvClientes.FindControl("direccionTextBox")).Text;
                cliente.estatura = decimal.Parse(((TextBox)fvClientes.FindControl("estaturaTextBox")).Text);
                cliente.fechaNacimiento = DateTime.Parse(((TextBox)fvClientes.FindControl("fechaNacimientoTextBox")).Text);
                cliente.nombre = ((TextBox)fvClientes.FindControl("nombreTextBox")).Text;
                cliente.peso = decimal.Parse(((TextBox)fvClientes.FindControl("pesoTextBox")).Text);
                cliente.priApellido = ((TextBox)fvClientes.FindControl("priApellidoTextBox")).Text;
                cliente.segApellido = ((TextBox)fvClientes.FindControl("segApellidoTextBox")).Text;
                if (fvClientes.CurrentMode == FormViewMode.Edit)
                {
 
                }
                if (fvClientes.CurrentMode == FormViewMode.Insert)
                {
                    bsCliente.AddClient(cliente);
                    ldsClientes.RaiseViewChanged();
                    ldsClientes.DataBind();
                }
            }
            catch (Exception ex)
            {
                throw new Exception("Error: "+ex.Message);
            }
        }

        protected void btnRegistrarCliente_Click(object sender, EventArgs e)
        {
            fvClientes.ChangeMode(FormViewMode.Insert);
            ClientScript.RegisterStartupScript(GetType(), "ShowPopUp", "OpenPopUp();", true); //Abre el popUp
        }

        protected void btnRegistrar_Click(object sender, EventArgs e)
        {
                AddOrEdit();   
        }

        protected void ldsClientes_Selecting(object sender, LinqDataSourceSelectEventArgs e)
        {
            bsClientes bc = new bsClientes();
            e.Result = bc.GetListClients(txbCedula.Text);
            txbCedula.Text = "";
        }

        protected void filtrarCliente_Click(object sender, EventArgs e)
        {
            ldsClientes.RaiseViewChanged();
            ldsClientes.DataBind();
        }

        protected void x_Click(object sender, ImageClickEventArgs e)
        {
          ClientScript.RegisterStartupScript(GetType(),"ClosePopUp","ClosePopUp();",true); //Cierra el popUp
        }

        protected void x_Click1(object sender, ImageClickEventArgs e)
        {

        }

        protected void ldsClientesMant_Selecting(object sender, LinqDataSourceSelectEventArgs e)
        {
            foreach (KeyValuePair<string, object> kvp in e.WhereParameters)   //Este codigo evita el error de incopatibilidad de int32 y Object
            {
                if (kvp.Value == null)
                {
                    e.Cancel = true;
                    return;
                }
            }
        }
    }
}